package com.example.stu.service;


import com.example.stu.entity.PageResult;
import com.example.stu.entity.PageStu;
import com.example.stu.entity.Result;
import com.example.stu.entity.res.StuChangePWD;
import com.example.stu.entity.res.StuSubmitVo;
import com.example.stu.pojo.Student;

import java.util.Map;

/**
 * @Date: 2021/2/24
 * @Author: 黄先军
 * @Description:
 */
public interface StudentService {

    /**
     * 多条件分页查询返数据
     * @param pageStu
     * @return
     */
    PageResult page(PageStu pageStu);

    /**
     * 查找当前学生的数据
     * @param stuId
     * @return
     */
    Result findById(Integer stuId);

    /**
     * 查找当前学生的数据，通过学生学号查询
     * @param id
     * @return
     */
    Result findByStuId(Integer id);

    /**
     * 新增或编辑
     * @param student
     */
    Result saveOrUpdate(Student student);

    /**
     * 逻辑删除学生
     * @param id
     * @return
     */
    Result remove(Integer id);

    /**
     * 学生修改提交自己的信息
     * @param stuSubmitVo
     * @return
     */
    Result tijiaoxinxi(StuSubmitVo stuSubmitVo);

    /**
     * 学生到校签到
     * @param stuSubmitVo
     * @return
     */
    Result signIn(StuSubmitVo stuSubmitVo);

    /**
     * 学生修改密码
     * @param stuChangePWD
     * @return
     */
    Result stuChangePWD(StuChangePWD stuChangePWD);

    /**
     * 查询到校的学生人数
     * @return
     * @param majorId
     */
    Map<String,Integer> findStuInSchool(String majorId);

}
